home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dr. Windows 3
/
dr win3.zip
/
dr win3
/
COMMUNIC
/
RFDMAILN.ZIP
/
GENIE.SCR
< prev
next >
Wrap
Text File
|
1993-09-15
|
8KB
|
306 lines
;------------------------------------------------------
;
;GENIE.SCR --- The script file for GENIE
;
;------------------------------------------------------
;
; We begin with the format specifiers to which allow
;the script to identify where the MailId, RealName,
;and Subject texts are in a newly downloaded letter.
;
Format
Sub: $SUBJECT$\n
From: $UID$ $NAME$\n
Endformat
;------------------------------------------------------
Begin START
Caption 'connected'
Timeout 2 Goto CONNECT
End
;------------------------------------------------------
Begin CONNECT
Transmit 'hhh'
When 'U#=' Goto USERNAME
Timeout 10 Goto CONNECT1
End
;------------------------------------------------------
Begin CONNECT1
Transmit 'hhh'
When 'U#=' Goto USERNAME
Timeout 10 Goto USERNAME
End
;------------------------------------------------------
Begin USERNAME
Transmit $USERNAME
Transmit ','
Transmit $PASSWORD
Transmit ',200:9'
Cr
When 'GEnie Logon' Goto LOGGED_IN
When 'VALIDATION FAULT, REENTER U# ' Goto INVALID_LOGIN
Timeout 20 Goto NO_LOGIN
End
;------------------------------------------------------
Begin INVALID_LOGIN
Transmit $USERNAME
Transmit ','
Transmit $PASSWORD
Transmit ',200:9'
Cr
When 'GEnie Logon' Goto LOGGED_IN
When 'VALIDATION FAULT, REENTER U# ' Goto NO_LOGIN
Timeout 20 Goto NO_LOGIN
End
;------------------------------------------------------
Begin LOGGED_IN
Caption 'logged in'
When 'No letters waiting' Goto NO_MAIL
When 'Enter #, <H>elp, or <CR> to continue?' Goto GOTO_MAIL
Timeout 45 Goto NO_LOGIN
End
;------------------------------------------------------
Begin GOTO_MAIL
Caption 'You Have Mail'
Transmit 'm 200:9'
Cr
When 'Command?' Goto CHECK_INCOMING
When 'Enter #, <H>elp, or <CR> to continue?' Goto GOTO_MAIL
Timeout 45 Goto NO_LOGIN
End
;------------------------------------------------------
Begin NO_MAIL
Caption 'No Mail'
When 'Enter #, <H>elp, or <CR> to continue?' Goto NO_MAIL_PROMPT
Timeout 45 Goto NO_LOGIN
End
;------------------------------------------------------
Begin NO_MAIL_PROMPT
If MORE_LETTERS Then JUMP_TO_SEND
Timeout 1 Goto LOG_OFF
End
;------------------------------------------------------
Begin JUMP_TO_SEND
Transmit 'm 200:9'
Cr
When 'Command?' Goto 1ST_REQUEST_CREATE
When 'Enter #, <H>elp, or <CR> to continue?' Goto JUMP_TO_SEND
Timeout 45 Goto GIVE_UP
End
;------------------------------------------------------
Begin CHECK_INCOMING
If FETCHING Then CHECK_MAIL
If MORE_LETTERS Then 1ST_REQUEST_CREATE
Timeout 1 Goto EXIT_MAIL
End
;------------------------------------------------------
Begin CHECK_MAIL
Transmit 'display'
Cr
When 'No letters found' Goto NO_MAIL_DISPLAY
When 'Queue# Item From' Goto HAVE_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin NO_MAIL_DISPLAY
Caption 'No Mail'
If MORE_LETTERS Then SEND_MAIL
When 'Command?' Goto EXIT_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin HAVE_MAIL
Caption 'You Have Mail'
ClearIndex
NextIndex
When 'Command?' Goto FETCH_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin FETCH_MAIL
Caption 'Fetching Mail'
Transmit 'list '
Transmit $INDEX
Cr
When 'Item' Goto DOWNLD_LETTER
When 'exceeds last' Goto NO_MORE_MAIL
When 'Command?' Goto FETCH_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin DOWNLD_LETTER
Download ASCII '=END=' Then DOWNLD_SUCCESS Else GIVE_UP
End
;------------------------------------------------------
Begin DOWNLD_SUCCESS
Caption 'Letter Received'
Confirm LETTER.RECEIVED Successful
NextIndex
Transmit 'list '
Transmit $INDEX
Cr
When 'Item' Goto DOWNLD_LETTER
When 'exceeds last' Goto NO_MORE_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin NO_MORE_MAIL
Caption 'Fetched Mail'
If MORE_LETTERS Then SEND_MAIL
When 'Command?' Goto EXIT_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin SEND_MAIL
Caption 'Sending Mail'
NewLetter
When 'Command?' Goto REQUEST_CREATE
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin 1ST_REQUEST_CREATE
Caption 'Sending Mail'
NewLetter
Transmit 'accept'
Cr
When 'To:' Goto TRANSMIT_DEST
Timeout 15 Goto GIVE_UP
End
;------------------------------------------------------
Begin REQUEST_CREATE
Transmit 'accept'
Cr
When 'To:' Goto TRANSMIT_DEST
Timeout 15 Goto GIVE_UP
End
;------------------------------------------------------
Begin TRANSMIT_DEST
Transmit $LETTER.DEST.USERNAME
Cr
When 'ignored - not found' Goto ABORT_SEND
When 'CC:' Goto DO_CC
When 'cc:' Goto DO_CC
When 'Carbon Copy:' Goto DO_CC
Timeout 15 Goto GIVE_UP
End
;------------------------------------------------------
Begin DO_CC
If LETTER.CC Then TRANSMIT_CC
Cr
When 'Sub:' Goto SEND_SUBJECT
End
;------------------------------------------------------
Begin TRANSMIT_CC
CreateCC 0 0 Delimiter ','
Transmit $LETTER.CC
Cr
When 'CC:' Goto DO_CC
When 'cc:' Goto DO_CC
When 'Carbon Copy:' Goto DO_CC
When 'Sub:' Goto SEND_SUBJECT
When 'ignored - not found' Goto ABORT_SEND
Timeout 15 Goto GIVE_UP
End
;------------------------------------------------------
Begin SEND_SUBJECT
Transmit $LETTER.SUBJECT
Cr
When 'READY FOR INPUT' Goto UPLOAD_LETTER
When 'Subject:' Goto SEND_SUBJECT
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin UPLOAD_LETTER
Caption 'Uploading Letter'
Upload ASCII Then UPLD_SUCCESS Else UPLD_FAILURE
End
;------------------------------------------------------
Begin UPLD_FAILURE
Confirm LETTER.SENT Unsuccessful
Timeout 1 Goto GIVE_UP
End
;------------------------------------------------------
Begin UPLD_SUCCESS
Timeout 2 Goto UPLD_SUCCESS1
End
;------------------------------------------------------
Begin UPLD_SUCCESS1
Control C
When '>' Goto FINISH_SEND
Timeout 10 Goto UPLD_SUCCESS1
End
;------------------------------------------------------
Begin UPLD_SUCCESS2
Control C
When '>' Goto FINISH_SEND
Timeout 20 Goto UPLD_FAILURE
End
;------------------------------------------------------
Begin FINISH_SEND
Transmit '*S'
Cr
When 'Created' Goto LETTER_SENT
When '>' Goto FINISH_SEND
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin LETTER_SENT
Caption 'Letter Sent'
Confirm LETTER.SENT Successful
If MORE_LETTERS Then SEND_MAIL
When 'Command?' Goto EXIT_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin ABORT_SEND
Caption 'Bad Address'
Control C
Confirm LETTER.SENT Unsuccessful
If MORE_LETTERS Then SEND_MAIL
When 'Command?' Goto EXIT_MAIL
Timeout 30 Goto GIVE_UP
End
;------------------------------------------------------
Begin EXIT_MAIL
Transmit 'bye'
Cr
Caption 'Leaving Mail Area'
When 'Enter #, <P>revious, or <H>elp?' Goto LOG_OFF
When 'Command?' Goto EXIT_MAIL
CarrierLoss Goto EXIT_PROGRAM
Timeout 20 Goto GIVE_UP
End
;------------------------------------------------------
Begin LOG_OFF
Transmit 'bye'
Cr
Caption 'Logging off'
When 'NO CAR' Goto EXIT_PROGRAM
When 'Enter #, <P>revious, or <H>elp?' Goto LOG_OFF
CarrierLoss Goto EXIT_PROGRAM
Timeout 20 Goto HANGUP_PHONE
End
;------------------------------------------------------
Begin EXIT_PROGRAM
Caption 'Logged off'
Timeout 3 Goto BYE_BYE
End
;------------------------------------------------------
Begin GIVE_UP
Caption 'Aborting'
Hangup
End
;--------------